﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using AccesoDatos.Manejador;
using AccesoDatos.Objetos;
using Conexion;
using System.Windows.Forms;
/*  Lista de Ex-Empleados
 * 
 */
namespace Autorizacion_facturas_caja
{
    public partial class frmExEmpleados : Form
    {
        ClsConexion conexion = new ClsConexion();
        objRH obj = new objRH();
        Manejador_Ex_empleado Man = new Manejador_Ex_empleado();
        Manejador_Empleado_Captura Mane = new Manejador_Empleado_Captura();

        #region funciones
        public frmExEmpleados()
        {
            InitializeComponent();

            ObtieneDatosCombo();
            btnFiniquito.Visible = false;
            ToolTip1();
            
          //  btnFiniquito.Visible = false;

        }
        private void frmExEmpleados_Load(object sender, EventArgs e)
        {
            obj.Buscar ="";
            obj.SucId ="01";

            dataGridView1.DataSource = Man.ListaEmpleados(obj.Buscar, obj.SucId, dteFechaInicio.Text.ToString(), dteFechaFin.Text.ToString());
            propiedadesColumnas();
        }
        private void ToolTip1()
        {

            ToolTip toolTip1 = new ToolTip();
            toolTip1.ShowAlways = true;
            toolTip1.SetToolTip(this.btnBuscar, "BUSCAR");
            toolTip1.SetToolTip(this.btnFiniquito, "FINIQUITO");
            toolTip1.SetToolTip(this.btnRegresar, "REGRESAR");
        }
        private void propiedadesColumnas()
        {
            //QUITA LA PRIMERA COLUMNA 
            this.dataGridView1.RowHeadersVisible = false;
           
            /*Esconde las columnas*/
            this.dataGridView1.Columns["id_empleado"].Visible = false;
            this.dataGridView1.Columns["id_sucursal"].Visible = false;
            this.dataGridView1.Columns["fecha_ingreso"].Visible = false;
            this.dataGridView1.Columns["id_jefe"].Visible = false;
            this.dataGridView1.Columns["cuenta_banco"].Visible = false;
            this.dataGridView1.Columns["estatus"].Visible = false;
            this.dataGridView1.Columns["nombre"].Visible = false;
            this.dataGridView1.Columns["apellidos"].Visible = false;
            this.dataGridView1.Columns["Id_Renuncia"].Visible = false;
            this.dataGridView1.Columns["Id_empleado1"].Visible = false;
            this.dataGridView1.Columns["comentarios"].Visible = false;
            this.dataGridView1.Columns["empresa"].Visible = false;
            this.dataGridView1.Columns["Monto_Finiquito"].Visible = false;
            this.dataGridView1.Columns["pagado"].Visible = false;
            this.dataGridView1.Columns["Fecha_pagado"].Visible = false;
            this.dataGridView1.Columns["Nombre1"].Visible = false;
            //Renombra columnas

            this.dataGridView1.Columns["Nombre_apellidos"].HeaderText = "EMPLEADO";
            this.dataGridView1.Columns["departamento"].HeaderText = "DEPARTAMENTO";
            this.dataGridView1.Columns["puesto"].HeaderText = "PUESTO";
            this.dataGridView1.Columns["Nombre1"].HeaderText = "SUCURSAL";
            this.dataGridView1.Columns["fecha"].HeaderText = "FECHA";
            this.dataGridView1.Columns["motivo"].HeaderText = "MOTIVO";
          //  this.dataGridView1.Columns["Seleccionar"].DisplayIndex = 0;
            this.dataGridView1.Columns["Nombre_apellidos"].DisplayIndex = 1;
            this.dataGridView1.Columns["Nombre1"].DisplayIndex = 2;
            this.dataGridView1.Columns["departamento"].DisplayIndex = 3;
            this.dataGridView1.Columns["puesto"].DisplayIndex = 4;

            this.dataGridView1.Columns["Nombre_apellidos"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
            this.dataGridView1.Columns["departamento"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
            this.dataGridView1.Columns["puesto"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
            this.dataGridView1.Columns["Nombre1"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
            this.dataGridView1.Columns["fecha"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
            this.dataGridView1.Columns["motivo"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
           // this.dataGridView1.Columns["Seleccionar"].HeaderCell.Style.Alignment = DataGridViewContentAlignment.MiddleCenter;
        
        }
        private void ObtieneDatosCombo()
        {    
            //Obtiene los datos de la tabla cat_sucursales al combo de sucursales
            cmbSucursal.DataSource = Mane.ObtieneSucursales();
            cmbSucursal.ValueMember = "SucId";
            cmbSucursal.DisplayMember = "Nombre";
        }

        private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            if (e.ColumnIndex >= 0 && e.RowIndex >= 0)
            {
                obj.Id_Empleado = Convert.ToInt32(dataGridView1[0, e.RowIndex].Value);
                obj.SucId = dataGridView1[1, e.RowIndex].Value.ToString();
                obj.IdJefe = Convert.ToInt32(dataGridView1[2, e.RowIndex].Value);
                obj.Nombre = dataGridView1[3, e.RowIndex].Value.ToString();
                obj.Apellidos = dataGridView1[4, e.RowIndex].Value.ToString();
                obj.Puesto = dataGridView1[5, e.RowIndex].Value.ToString();
                obj.FechaIngreso = Convert.ToDateTime(dataGridView1[6, e.RowIndex].Value);
                obj.Departamento = dataGridView1[7, e.RowIndex].Value.ToString();
                obj.Cuenta_Banco = dataGridView1[8, e.RowIndex].Value.ToString();
                obj.Estatus = Convert.ToInt32(dataGridView1[9, e.RowIndex].Value);
                obj.Fecha_renuncia = Convert.ToDateTime(dataGridView1[14, e.RowIndex].Value);
                obj.Nombre_completo = dataGridView1[17, e.RowIndex].Value.ToString();
                if (e.ColumnIndex != 0)
                {
                    btnFiniquito.Visible = false;
                    if (MessageBox.Show("SEGURO DE ACTIVAR EMPLEADO", "AVISO", MessageBoxButtons.OKCancel) == DialogResult.OK)
                        try
                        {

                            bool res = Man.ActivaEmpleado(obj.Id_Empleado);
                            frmEmpleado_Captura captura = new frmEmpleado_Captura(obj.Id_Empleado);
                            captura.ShowDialog();
                            dataGridView1.DataSource = Man.ListaEmpleados(obj.Buscar, obj.SucId, dteFechaInicio.Text.ToString(), dteFechaFin.Text.ToString());
                            propiedadesColumnas();
                        }
                        catch
                        {
                            MessageBox.Show("NO SE ACTIVO", "ALERTA");
                        }
                }
                else {
                    btnFiniquito.Visible = false;
                
                }
            }
        }

        private void timer1_Tick(object sender, EventArgs e)
        {
            dataGridView1.DataSource = Man.ListaEmpleados(obj.Buscar, obj.SucId,  dteFechaInicio.Text.ToString(), dteFechaFin.Text.ToString());
            propiedadesColumnas();
        }
        #endregion 

        #region BOTON
        private void btnBuscar_Click(object sender, EventArgs e)
        {
            obj.Buscar = txtNombre.Text.Trim();
            obj.SucId = cmbSucursal.SelectedValue.ToString();
            dataGridView1.DataSource = Man.ListaEmpleados(obj.Buscar, obj.SucId,  dteFechaInicio.Text.ToString(), dteFechaFin.Text.ToString());
            propiedadesColumnas();
        }

        private void btnRegresar_Click(object sender, EventArgs e)
        {
            Close();
        }

        private void btnFiniquito_Click(object sender, EventArgs e)
        {
            frmFiniquitoCalcula frm = new frmFiniquitoCalcula(obj);
            frm.ShowDialog();
        }
        #endregion 

    }
}
